Enabling spontaneous social encounters in online or remote working environments

ABSTRACT

A meeting system facilitates spontaneous social encounter between users with a meeting server. The meeting server obtains calendar data and user preferences associated with each user of a plurality of users. The meeting server also prompts a first user device associated with a first user, and a second user device associated with a second user, for a social encounter based on the calendar data and the user preferences. Responsive to obtaining acceptances from the first user and the second user, the meeting server facilitates the social encounter between the first user and the second user.

TECHNICAL FIELD

The present disclosure relates to meeting scheduling, especially for aremote workforce.

BACKGROUND

Social interaction is important to humans, even in work environmentswhere most of the work is performed individually. Spontaneousencounters, such as bumping into a coworker in a shared space, provideopportunities to discover new projects and make new connections withother people. In a remote working environment, spontaneous socialinteraction is minimized by the lack of proximity and shared spaces forcoworkers. Social interaction in a remote workplace may be maintainedthrough pre-planned video, voice, and/or text chat platforms, but theremote workplace presents challenges to spontaneous interactions.Presence indicators may provide a user with the ability to see ifanother party is busy before attempting to contact them, but theinteractions still require a conscious effort to seek out theinteraction and then check the presence indicator of the other party.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified block diagram of an online meeting system,according to an example embodiment.

FIG. 2 is a message flow diagram illustrating a meeting serverinitiating a spontaneous social encounter between two users, accordingto an example embodiment.

FIG. 3A is a screenshot of a prompt for a user to have a spontaneousinteraction, according to an example embodiment.

FIG. 3B is a screenshot of a prompt for a user to have a spontaneousinteraction with a suggested engagement activity, according to anexample embodiment.

FIG. 4A is a screenshot of a follow-up prompt to a spontaneous socialencounter, according to an example embodiment.

FIG. 4B is a screenshot of a prompt to suggest a social encounter withbetween users, according to an example embodiment.

FIG. 5 is a flowchart illustrating operations performed on a meetingserver to facilitate spontaneous social encounters between users,according to an example embodiment.

FIG. 6 illustrates a simplified block diagram of a device that may beconfigured to perform the methods presented herein, according to anexample embodiment.

DESCRIPTION OF EXAMPLE EMBODIMENTS

Overview

A computer-implemented method is provided for facilitating a spontaneoussocial encounter in a remote work or online environment. The methodincludes obtaining calendar data associated with each user of aplurality of users. The method also includes obtaining user preferencesassociated with each user of the plurality of users. The method furtherincludes prompting a first user device associated with a first user anda second user device associated with a second user for a socialencounter based on the calendar data and the user preferences.Responsive to obtaining acceptances from the first user and the seconduser, the method includes facilitating the social encounter between thefirst user and the second user.

Example Embodiments

The techniques described herein enable spontaneous social encounters,especially in a remote work environment. The techniques enable two ormore users to connect with each other dynamically and spontaneously. Thespontaneity of the interaction allows a remote work experience to moreclosely resemble the in-person office environment and enables remotecoworkers to maintain a camaraderie with each other. However, completelyrandom social encounters would be disruptive and unproductive forcoworkers. The meeting system described herein takes multiple factorsinto account to encourage meaningful, spontaneous social interactions.

Referring now to FIG. 1 , a meeting system 100 is described that promptsusers to engage in spontaneous social encounters. A meeting server 110coordinates the meeting system 100, and includes encounter logic 112,conferencing logic 114, calendar data 116, and user preferences 118. Theencounter logic 112 enables the meeting server 110 to determine whichusers to select for a social encounter, and enables the meeting server110 to prompt each user about the social encounter. The conferencinglogic 114 enables the meeting server 110 to facilitate social encountersthrough online conferences, such as video and/or voice chat meetings.The calendar data 116 includes availability data for each of the usersregistered with the meeting system 100. In some embodiments, thecalendar data 116 may be maintained by a separate calendarserver/service. The user preferences 118 includes data from each userabout how they prefer to interact with other users through the meetingsystem 100. For instance, the user preferences 118 associated with aparticular user may indicate preferences for how to interact withspecific users (e.g., games with some users and short video calls withother users) as well as a general preference for the timing ofspontaneous interactions (e.g., morning or afternoon) and the frequencyof interactions (e.g., once per week) facilitated by the meeting system100.

The meeting server 110 is connected to a network 120, which may includeone or more computer networks. A user device 130 associated with a user135 connects to the meeting server 110 through the network 120.Similarly, user devices 140 and 150 associated with users 145 and 155,respectively, connect to the meeting server 110 through the network 120.Additional users may connect to the meeting server 110, and each usermay be associated with more than a single user device.

In one example, the calendar data 116 for a specific user (e.g., user135) may be obtained from the user device 130 or from other computingdevices on which the user 135 may be registered (e.g., a cloud-hostedcalendar system). The calendar data 116 for the user 135 may include aschedule of planned meetings including the user 135, a listing of otherusers (e.g., users 145 or 155) in meetings with the user 135, a recordof past spontaneous encounters involving the user 135, and/or presenceinformation for the user 135. Additionally, the user 135 may indicateparticular times as dedicated spontaneity times as part of the calendardata 116 that is stored associated with the user 135.

In another example, the user preferences 118 for a specific user (e.g.,user 135) may be provided by the user 135 through the user device 130 orfrom other computing devices on which the user 135 may be registered.The user preferences 118 associated with the user 135 may includecontact data for contacts (e.g., coworkers, friends, teammates, etc.) ofthe user 135, user interests of the user 135 (e.g., games, hobbies,sports, travel destinations, art/literature preferences, etc.),encounter preferences for social encounters (e.g., one-one-one, smallgroup, video, text chat, types of engagement activities, etc.), a listof other users (e.g., user 145) with which the user 135 would like toprioritize having a social encounter, or a list of other users (e.g.,user 155) with which the user 135 would like to exclude from futuresocial encounters. Additionally, the user preferences 118 may indicatespecific times of the day during which the user 135 is available toparticipate in spontaneous social encounters. Alternatively, the user135 may allow the meeting server 110 to determine the timing of anyspontaneous social encounters.

In a further example, the encounter logic 112 may enable the meetingserver 110 to promote the casual aspect of the social encounters byoptionally providing social encounters with a predetermined duration.The predetermined duration may be short enough (e.g., 10 minutes) toprovide the users with confidence that they will not be trapped in thesocial encounter for too long. Additionally, the conferencing logic 114may provide a countdown timer to provide participants with a visual cueof the time remaining in the social encounter. The conferencing logic114 may also provide an engagement activity (e.g., a game, discussiontopic, etc.) for the participants in the social encounter.

In still another example, system administrators of the meeting system100 may selectively enable or disable features (e.g., engagementactivities, small group encounters, etc.) of the meeting system 100 orset values (e.g., encounter duration, encounter frequency, etc.) for themeeting system 100. Alternatively, users may be able to set theirpersonal preferences for features and values in the user preferences118.

Referring now to FIG. 2 , a message flow diagram illustrates an exampleof the meeting server 110 facilitating a spontaneous social encounterbetween user 135 and user 145. The meeting server 110 collects calendardata 210 from the user devices 130 and 140, which are associated withthe users 135 and 145, respectively. Similarly, the meeting server 110collects user preferences 215 for the users 135 and 145 from the userdevice 130 and 140, respectively. In one example, the calendar data 210includes a scheduled call 220 for which the user 135 has blocked offtime. In another example, the calendar data 210 and/or user preferences215 may be collected from the user devices 135 and 145 through aseparate service (e.g., a cloud-based service).

Based on the calendar data 210 and the timing of the scheduled call 220,the meeting server determines that the user 135 may be available for aspontaneous social encounter after the scheduled call 220. At the end ofthe scheduled call 220, the meeting server 110 sends an encounterrequest 230 to the user device 130. In one example, the meeting servermay wait for a predetermined length of time (e.g., 5-10 minutes) afterthe end of the scheduled call 220 to allow buffer time around meetings.The encounter request 230 identifies the user 145 as the otherparticipant in the social encounter.

After the meeting server 110 receives the encounter acceptance from theuser device 130, the meeting server 110 sends a corresponding encounterrequest 240 to the user device 140 associated with the user 145.Alternatively, the meeting server 110 may send the encounter request 240to the user device 140 before receiving the encounter acceptance 235from the user device 130. If the user 145 agrees to the socialencounter, the user 145 causes the user device 140 to send the encounteracceptance 245 to the meeting server 110.

Once the meeting server 110 receives the encounter acceptance 235 fromthe user device 130 and the encounter acceptance 245 from the userdevice 140, the user device 130 and the user device 140 proceed with thesocial encounter 250. In one example, the social encounter 250 may befacilitated by the meeting server 110 by an interaction 255. Forinstance, the messages in the social encounter 250 may be part of anonline conference session mediated by the meeting server 110.Alternatively, the meeting server 110 may facilitate a directpeer-to-peer social encounter 250 between the user device 130 and theuser device 140.

In another example, if the user 145 declines the spontaneous socialencounter (i.e., the user device 140 does not send the encounteracceptance 245), then the meeting server 110 may select a different userfor the social encounter with the user 135. Additionally, the meetingserver 110 may add further users to the social encounter 250 if both theuser 135 and the user 145 agree to a small group encounter instead of aone-on-one interaction.

Referring now to FIG. 3A, a simulated screenshot illustrates a window ofa conferencing application 310 prompting a user 320 (e.g., Alice) for aspontaneous social encounter. The conferencing application 310 includesa contact list 330 with individual contacts (e.g., Bob, Christopher,David, and Elecia) and group contacts (e.g., Team A and Team B). Thecontact list 330 may display the presence information of each individualcontact, and/or whether a conference with each contact includes unreadmessages.

To prompt the user 320 for a spontaneous social encounter, theconferencing application 310 displays a dialog box 340 that identifiesanother user (e.g., Jay) that the meeting system 100 has been matchedwith the user 320 for the social encounter. The dialog box 340 mayinclude information about the other user (e.g., an amount of time sincethe two users have communicated, common interests between the users, thelikelihood of the other user accepting a spontaneous social encounter,etc.) and/or information about the social encounter (e.g., thepredetermined length of the social encounter, suggested engagementactivities, topics for discussion, etc.). The user 320 may accept theinvitation to the social encounter by pressing the button 342 in thedialog box 340. Alternatively, the user 320 may reject the invitation bypressing the button 344 in the dialog box 340.

In one example, the meeting system 100 attempts to mimic thenon-committal environment of someone walking into a break room andhaving the option of simply nodding (i.e., acknowledging their coworkerand moving on) or stopping for a conversation (i.e., engaging with thecoworker). One method of ensuring a light and non-committal environmentis to enforce a fixed meeting length (e.g., 5-7 minutes) that is notextendable by the users. A countdown timer may be displayed to theparticipants of the social encounter in the invitation to the socialencounter and/or during the social encounter itself. Any user wishingthe meeting would end only needs to wait a few short minutes. If a userwants to extend the meeting, then the user is directed to call backand/or schedule a planned meeting to follow the spontaneous encounter.The fixed duration of the spontaneous social encounter provides eachparticipant confidence that accepting the invitation will not trap themwith another user for an extended period of time.

The meeting system 100 may also increase user engagement with thespontaneous social encounter by using engagement activities, such asgames. Referring now to FIG. 3B, a simulated screenshot illustrates aprompt for a spontaneous social encounter with a specific gameinvitation. In the example shown in FIG. 3B, the conferencingapplication 310 displays a dialog box 350 to prompt the user 320 (e.g.,Alice) to participate in a game with another user (e.g., Magnus). Theuser 320 may accept the invitation to the game by pressing the button352 in the dialog box 350. Alternatively, the user 320 may reject theinvitation by pressing the button 354 in the dialog box 350.

The game selected for the engagement activity, such as chess, may bebased on a common interest in the game by both participants selected forthe social encounter. Additionally, a specific time limit for the gamemay be used as a maximum length of the social encounter. For instance, achess game may use a time clock to ensure the total time of the gamedoes not intrude too far into the workday. In another example, themeeting system 100 may maintain a scoreboard for games between users,and the dialog box 350 inviting the user 320 to the game may includepotential changes to the rankings as encouragement to accept theinvitation to play the game. Prizes may be provided based on thescoreboard to further attract user engagement with the socialencounters.

Other engagement activities may be cooperative (e.g., solving a virtualjigsaw puzzle) or competitive (e.g., trivia competitions). Theengagement activities may be selected by the meeting system 100 based onrecords of previous responses to engagement activities. For instance, ifone user typically accepts invitations for a game of chess, but rejectsinvitations for a game of cribbage, then the meeting system 100 maydetermine that chess is a more effective engagement activity for thatuser. Alternatively, the meeting system 100 may store specific userpreferences provided by the users that indicate which engagementactivities each user is likely to accept.

In another example, the meeting system 100 may select users toparticipate in a spontaneous social encounter as a way for new employeesto be introduced to their coworkers. In the physical world, a technicallead or manager would typically take a new employee from office tooffice to introduce them to their new coworkers. The spontaneous socialencounters through the meeting system 100 provides a mechanism toaccomplish a similar function in a virtual workplace environment. A newemployee may indicate that they are new and want an introduction tocoworkers, and the meeting system 100 may prioritize spontaneous socialencounters for the new employee and match them with appropriate teamleaders and coworkers. Additionally, in this mode, the user who ismatched with the new employee may be notified in the invitation that thesocial encounter is with a new employee.

In a further example, the meeting system 100 may provide icebreakerexercises as an engagement activity to enable users to learn more abouteach other. The meeting system 100 may provide each user withinteresting facts that serve as icebreakers to begin a dialog betweenthe users. For instance, the meeting system 100 may indicate to one orboth users in a social encounter that other participant shares a commoninterest (e.g., travelling, football, etc.), or that the participantsshare a common trait (e.g., they both previously worked for the sameemployer, or both lived in the same city). Alternatively, the meetingsystem 100 may pose a series of general questions for each user toanswer as a way of getting to know each user.

Referring now to FIG. 4A, a simulated screenshot of a social encounterillustrates how the meeting system 100 may provide an option to schedulea follow-up to the spontaneous social encounter. The meeting system 100limits the duration of the spontaneous social encounters to promoteengagement, but the participants in the spontaneous encounter may wantto continue the discussion in a follow-up meeting. In the screenshotshown in FIG. 4A, a user 320 (e.g., Alice) is in a spontaneous socialencounter with another user 410 (e.g., David). The conferencingapplication 310 includes a video chat feature 420 as part of the socialencounter.

As the social encounter approaches the end of the predeterminedduration, the conferencing application 310 may display a pop-up box 430to allow the user 320 to indicate whether the user would like toschedule a follow-up meeting at a later date. If the user 320 would liketo schedule another short meeting, then the user 320 may press thebutton 432 of the pop-up box 430. If the user 320 would prefer a longermeeting over lunch, then the user 320 may press the button 434 of thepop-up box 430. In other examples, additional options may be providedfor follow-up meetings, such as specific date and/or time options,varying duration meetings, and/or additional participants to invite tothe follow-up meeting.

Referring now to FIG. 4B, a simulated screenshot illustrates a promptfor a user 320 (e.g., Alice) to suggest potential users for the meetingsystem 100 to match in a spontaneous social encounter. The conferencingapplication 310 includes a dialog box 440 for suggesting socialencounters between two or more users. In the example shown in FIG. 4B,the user 320 uses the dialog box 440 to suggest a social encounterbetween a user 410 (e.g., David) and a user 450 (e.g., Dianne). Thedialog box 440 also includes an entry 460 to indicate a reason (e.g., acommon interest in travel) that the user 410 and the user 450 would belikely to engage with each other in a spontaneous social encounter. Theuser 320 may suggest a particular type of social encounter for the user410 and the user 450 by selecting button 472 to suggest a short game,selecting button 474 for a ten minute video chat, or selecting button476 for a lunch meeting.

In one example, after the user 320 selects the user 410 for a potentialspontaneous social encounter, the meeting system 100 may automaticallygenerate suggestions of other users (e.g., user 450) that may beappropriate for a spontaneous social encounter with the selected user410. For instance, the user 320 may want to suggest that the user 410would benefit from a spontaneous social encounter with someone, but maynot know other users' interests to be able to suggest a specific user.

The meeting system 100 may leverage many factors in determining whichusers to match for a spontaneous social encounter. In one example, themeeting system may use the role/location of each user in a companyorganization chart to match users who are neighbors in the organization(e.g., coworkers with similar job functions) or to encourage interactionacross the layers of the organization. For instance, users who are partof a virtual team working together on a virtual project may be morelikely to be selected for a spontaneous social encounter.

In another example, the meeting system 100 may match users based onsimilar user interests, which may be work related or non-work related.For instance, each user may be given an opportunity to submit theirinterests in a questionnaire when they are hired to an organizationand/or at periodic intervals to ensure their current interests arestored by the meeting system 100. Additionally, the meeting system 100may automatically determine user interests based on each user's jobtitle and job function.

An individual user may also provide a list of other users tospecifically exclude from spontaneous social encounters. For instance,if two users live in the same house and already speak to each otherevery day, these users may want to prevent the meeting system 100 frommatching them in a spontaneous social encounter. Additionally, a usermay provide a list of other users that they would like to meet, whichenables the meeting system 100 to prioritize that spontaneous socialencounter. As described with respect to FIG. 4B, users may also providesuggestions for other users who may benefit from a spontaneous socialencounter.

Additionally, the meeting system 100 may match users for a spontaneoussocial encounter based on their history of social encounters. Forinstance, the meeting system 100 may avoid repeatedly matching the sameusers for a spontaneous social encounter to avoid interaction fatigue.The meeting system 100 may have a cool down timer for social encountersbetween two users after they have finished a social encounter.Alternatively, the users may indicate that the social encounter wentwell, enabling the meeting system 100 to prioritize additional socialencounters between those users.

In another example, a user may explicitly invoke the meeting system 100by designating themselves as “on break” and available for a socialencounter. By designating themselves as available for a socialencounter, the users are opting in to the meeting system 100, ratherthan relying on the meeting system 100 determining an appropriate timeto suggest a spontaneous social encounter. Opting in to the meetingsystem 100 allows the users to determine the timing of the socialencounter, while relying on the meeting system 100 to determine theparticipants of the social encounter, with potential input from theusers (e.g., with a list of users to match for the social encounter.

In a further example, the meeting system 100 may pre-match users for asocial encounter based on calendar data, and suggest a social for afuture time. Pre-scheduling the social encounters removes some of thespontaneity from the social encounter, but enables users with busy workschedules to participate in some social encounters.

In still another example, the meeting system 100 may allow users tochoose to be alerted for a social encounter with a friend whenever thefriend designated himself/herself as available. This alert allows theuser to decide to also designate themselves as available (e.g., take abreak) at the same time as their friend. This mechanism enables themeeting system 100 to mimic the real world behavior of the user seeingtheir coworker heading to the break room, and deciding that it is a goodtime to take a break also.

Referring now to FIG. 5 , a flowchart illustrates operations performedby a meeting server (e.g., meeting server 110) in a process 500 to matchusers for a spontaneous social encounter. At 510, the meeting serverobtains calendar data from a plurality of users. In one example, thecalendar data may include the schedule of individual users and/or arecord of previously facilitated social encounters. At 520, the meetingserver obtains user preferences associated with the plurality of users.In one example, the user preferences include user interests, preferencesfor types of social encounters, preferences for participants in socialencounters, and/or preferences for the timing of social encounters.

At 530, the meeting server prompts a first user device associated with afirst user for a social encounter based on the calendar data and theuser preferences. In one example, the meeting server may select at leastone other user for the social encounter and notify the first user of theidentity of the at least one other user. In another example, the meetingserver may notify the first user about parameters of the socialencounter, such as the predetermined duration of the encounter,attributes of at least one other user selected for the social encounter,or an engagement activity for the social encounter.

At 540, the meeting server prompts a second user device associated witha second user for the social encounter based on the calendar data andthe user preferences. In one example, the meeting server may wait toprompt the second user device for the social encounter until after thefirst user has accepted the prompt for the social encounter. In anotherexample, the meeting server may notify the second user about parametersof the social encounter, such as the predetermined duration of thesocial encounter, attributes of at least one other user (e.g., the firstuser) selected for the social encounter, or an engagement activity forthe social encounter.

At 550, the meeting server determines whether the first user and thesecond user have accepted the social encounter. If one or both of theusers (e.g., the first user and the second user) decline the prompt forthe social encounter, the meeting server selects at least one new userand returns to either 530 or 540 to prompt the new users for the socialencounter. For instance, if the second user declines the prompt for thesocial encounter, the meeting server may select a different user to havethe social encounter with the first user. If both the first user and thesecond user accept their respective prompts for the social encounter,then the meeting server facilitates the social encounter between thefirst user and the second user at 560

In one example, the meeting server may wait a short period of time(e.g., 1-2 minutes) for each participant (e.g., the first user and thesecond user) to respond to their respective prompts for the socialencounter before selecting different users for the social encounter. Inanother example, the meeting server may facilitate the social encounterby starting an online conferencing session. The online conferencingsession may include video, voice, text, or other means of communicatingbetween two remote users. The meeting server may mediate the onlineconferencing session between the first user device and the second userdevice. Alternatively, the first user and/or the second user may jointhe online conferencing session with a separate device (e.g., adedicated telepresence device or a smartphone). For instance, a user mayrespond to the prompt for the social encounter by sending an acceptancemessage from their respective user device indicating that they will jointhe social encounter from a separate device.

In a further example, the first user and/or the second user may sendtheir response to the prompt for the social encounter via the first userdevice or the second user device. Alternatively, the first user and/orthe second user may respond to the prompt for the social encounter usinga separate device (e.g., a telepresence device).

Referring to FIG. 6 , FIG. 6 illustrates a hardware block diagram of acomputing device 600 that may perform functions associated withoperations discussed herein in connection with the techniques depictedin FIGS. 1, 2, 3A, 3B, 4A, 4B, and 5 . In various embodiments, acomputing device, such as computing device 600 or any combination ofcomputing devices 600, may be configured as any entity/entities asdiscussed for the techniques depicted in connection with FIGS. 1, 2, 3A,3B, 4A, 4B, and 5 in order to perform operations of the varioustechniques discussed herein.

In at least one embodiment, the computing device 600 may include one ormore processor(s) 602, one or more memory element(s) 604, storage 606, abus 608, one or more network processor unit(s) 610 interconnected withone or more network input/output (I/O) interface(s) 612, one or more I/Ointerface(s) 614, and control logic 620. In various embodiments,instructions associated with logic for computing device 600 can overlapin any manner and are not limited to the specific allocation ofinstructions and/or operations described herein.

In at least one embodiment, processor(s) 602 is/are at least onehardware processor configured to execute various tasks, operationsand/or functions for computing device 600 as described herein accordingto software and/or instructions configured for computing device 600.Processor(s) 602 (e.g., a hardware processor) can execute any type ofinstructions associated with data to achieve the operations detailedherein. In one example, processor(s) 602 can transform an element or anarticle (e.g., data, information) from one state or thing to anotherstate or thing. Any of potential processing elements, microprocessors,digital signal processor, baseband signal processor, modem, PHY,controllers, systems, managers, logic, and/or machines described hereincan be construed as being encompassed within the broad term ‘processor’.

In at least one embodiment, memory element(s) 604 and/or storage 606is/are configured to store data, information, software, and/orinstructions associated with computing device 600, and/or logicconfigured for memory element(s) 604 and/or storage 606. For example,any logic described herein (e.g., control logic 620) can, in variousembodiments, be stored for computing device 600 using any combination ofmemory element(s) 604 and/or storage 606. Note that in some embodiments,storage 606 can be consolidated with memory element(s) 604 (or viceversa), or can overlap/exist in any other suitable manner.

In at least one embodiment, bus 608 can be configured as an interfacethat enables one or more elements of computing device 600 to communicatein order to exchange information and/or data. Bus 608 can be implementedwith any architecture designed for passing control, data and/orinformation between processors, memory elements/storage, peripheraldevices, and/or any other hardware and/or software components that maybe configured for computing device 600. In at least one embodiment, bus608 may be implemented as a fast kernel-hosted interconnect, potentiallyusing shared memory between processes (e.g., logic), which can enableefficient communication paths between the processes.

In various embodiments, network processor unit(s) 610 may enablecommunication between computing device 600 and other systems, entities,etc., via network I/O interface(s) 612 to facilitate operationsdiscussed for various embodiments described herein. In variousembodiments, network processor unit(s) 610 can be configured as acombination of hardware and/or software, such as one or more Ethernetdriver(s) and/or controller(s) or interface cards, Fibre Channel (e.g.,optical) driver(s) and/or controller(s), and/or other similar networkinterface driver(s) and/or controller(s) now known or hereafterdeveloped to enable communications between computing device 600 andother systems, entities, etc. to facilitate operations for variousembodiments described herein. In various embodiments, network I/Ointerface(s) 612 can be configured as one or more Ethernet port(s),Fibre Channel ports, and/or any other I/O port(s) now known or hereafterdeveloped. Thus, the network processor unit(s) 610 and/or network I/Ointerface(s) 612 may include suitable interfaces for receiving,transmitting, and/or otherwise communicating data and/or information ina network environment.

I/O interface(s) 614 allow for input and output of data and/orinformation with other entities that may be connected to computer device600. For example, I/O interface(s) 614 may provide a connection toexternal devices such as a keyboard, keypad, a touch screen, and/or anyother suitable input and/or output device now known or hereafterdeveloped. In some instances, external devices can also include portablecomputer readable (non-transitory) storage media such as databasesystems, thumb drives, portable optical or magnetic disks, and memorycards. In still some instances, external devices can be a mechanism todisplay data to a user, such as, for example, a computer monitor, adisplay screen, or the like.

In various embodiments, control logic 620 can include instructions that,when executed, cause processor(s) 602 to perform operations, which caninclude, but not be limited to, providing overall control operations ofcomputing device; interacting with other entities, systems, etc.described herein; maintaining and/or interacting with stored data,information, parameters, etc. (e.g., memory element(s), storage, datastructures, databases, tables, etc.); combinations thereof; and/or thelike to facilitate various operations for embodiments described herein.

The programs described herein (e.g., control logic 620) may beidentified based upon application(s) for which they are implemented in aspecific embodiment. However, it should be appreciated that anyparticular program nomenclature herein is used merely for convenience;thus, embodiments herein should not be limited to use(s) solelydescribed in any specific application(s) identified and/or implied bysuch nomenclature.

In various embodiments, entities as described herein may storedata/information in any suitable volatile and/or non-volatile memoryitem (e.g., magnetic hard disk drive, solid state hard drive,semiconductor storage device, random access memory (RAM), read onlymemory (ROM), erasable programmable read only memory (EPROM),application specific integrated circuit (ASIC), etc.), software, logic(fixed logic, hardware logic, programmable logic, analog logic, digitallogic), hardware, and/or in any other suitable component, device,element, and/or object as may be appropriate. Any of the memory itemsdiscussed herein should be construed as being encompassed within thebroad term ‘memory element’. Data/information being tracked and/or sentto one or more entities as discussed herein could be provided in anydatabase, table, register, list, cache, storage, and/or storagestructure: all of which can be referenced at any suitable timeframe. Anysuch storage options may also be included within the broad term ‘memoryelement’ as used herein.

Note that in certain example implementations, operations as set forthherein may be implemented by logic encoded in one or more tangible mediathat is capable of storing instructions and/or digital information andmay be inclusive of non-transitory tangible media and/or non-transitorycomputer readable storage media (e.g., embedded logic provided in: anASIC, digital signal processing (DSP) instructions, software[potentially inclusive of object code and source code], etc.) forexecution by one or more processor(s), and/or other similar machine,etc. Generally, memory element(s) 604 and/or storage 606 can store data,software, code, instructions (e.g., processor instructions), logic,parameters, combinations thereof, and/or the like used for operationsdescribed herein. This includes memory element(s) 604 and/or storage 606being able to store data, software, code, instructions (e.g., processorinstructions), logic, parameters, combinations thereof, or the like thatare executed to carry out operations in accordance with teachings of thepresent disclosure.

In some instances, software of the present embodiments may be availablevia a non-transitory computer useable medium (e.g., magnetic or opticalmediums, magneto-optic mediums, CD-ROM, DVD, memory devices, etc.) of astationary or portable program product apparatus, downloadable file(s),file wrapper(s), object(s), package(s), container(s), and/or the like.In some instances, non-transitory computer readable storage media mayalso be removable. For example, a removable hard drive may be used formemory/storage in some implementations. Other examples may includeoptical and magnetic disks, thumb drives, and smart cards that can beinserted and/or otherwise connected to a computing device for transferonto another computer readable storage medium.

Variations and Implementations

Embodiments described herein may include one or more networks, which canrepresent a series of points and/or network elements of interconnectedcommunication paths for receiving and/or transmitting messages (e.g.,packets of information) that propagate through the one or more networks.These network elements offer communicative interfaces that facilitatecommunications between the network elements. A network can include anynumber of hardware and/or software elements coupled to (and incommunication with) each other through a communication medium. Suchnetworks can include, but are not limited to, any local area network(LAN), virtual LAN (VLAN), wide area network (WAN) (e.g., the Internet),software defined WAN (SD-WAN), wireless local area (WLA) access network,wireless wide area (WWA) access network, metropolitan area network(MAN), Intranet, Extranet, virtual private network (VPN), Low PowerNetwork (LPN), Low Power Wide Area Network (LPWAN), Machine to Machine(M2M) network, Internet of Things (IoT) network, Ethernetnetwork/switching system, any other appropriate architecture and/orsystem that facilitates communications in a network environment, and/orany suitable combination thereof.

Networks through which communications propagate can use any suitabletechnologies for communications including wireless communications (e.g.,4G/5G/nG, IEEE 802.11 (e.g., Wi-Fi®/Wi-Fi6®), IEEE 802.16 (e.g.,Worldwide Interoperability for Microwave Access (WiMAX)),Radio-Frequency Identification (RFID), Near Field Communication (NFC),Bluetooth™ mm.wave, Ultra-Wideband (UWB), etc.), and/or wiredcommunications (e.g., T1 lines, T3 lines, digital subscriber lines(DSL), Ethernet, Fibre Channel, etc.). Generally, any suitable means ofcommunications may be used such as electric, sound, light, infrared,and/or radio to facilitate communications through one or more networksin accordance with embodiments herein. Communications, interactions,operations, etc. as discussed for various embodiments described hereinmay be performed among entities that may directly or indirectlyconnected utilizing any algorithms, communication protocols, interfaces,etc. (proprietary and/or non-proprietary) that allow for the exchange ofdata and/or information.

In various example implementations, entities for various embodimentsdescribed herein can encompass network elements (which can includevirtualized network elements, functions, etc.) such as, for example,network appliances, forwarders, routers, servers, switches, gateways,bridges, load balancers, firewalls, processors, modules, radioreceivers/transmitters, or any other suitable device, component,element, or object operable to exchange information that facilitates orotherwise helps to facilitate various operations in a networkenvironment as described for various embodiments herein. Note that withthe examples provided herein, interaction may be described in terms ofone, two, three, or four entities. However, this has been done forpurposes of clarity, simplicity and example only. The examples providedshould not limit the scope or inhibit the broad teachings of systems,networks, etc. described herein as potentially applied to a myriad ofother architectures.

Communications in a network environment can be referred to herein as‘messages’, ‘messaging’, ‘signaling’, ‘data’, ‘content’, ‘objects’,‘requests’, ‘queries’, ‘responses’, ‘replies’, etc. which may beinclusive of packets. As referred to herein and in the claims, the term‘packet’ may be used in a generic sense to include packets, frames,segments, datagrams, and/or any other generic units that may be used totransmit communications in a network environment. Generally, a packet isa formatted unit of data that can contain control or routing information(e.g., source and destination address, source and destination port,etc.) and data, which is also sometimes referred to as a ‘payload’,‘data payload’, and variations thereof. In some embodiments, control orrouting information, management information, or the like can be includedin packet fields, such as within header(s) and/or trailer(s) of packets.Internet Protocol (IP) addresses discussed herein and in the claims caninclude any IP version 4 (IPv4) and/or IP version 6 (IPv6) addresses.

To the extent that embodiments presented herein relate to the storage ofdata, the embodiments may employ any number of any conventional or otherdatabases, data stores or storage structures (e.g., files, databases,data structures, data or other repositories, etc.) to store information.

Note that in this Specification, references to various features (e.g.,elements, structures, nodes, modules, components, engines, logic, steps,operations, functions, characteristics, etc.) included in ‘oneembodiment’, ‘example embodiment’, ‘an embodiment’, ‘anotherembodiment’, ‘certain embodiments’, ‘some embodiments’, ‘variousembodiments’, ‘other embodiments’, ‘alternative embodiment’, and thelike are intended to mean that any such features are included in one ormore embodiments of the present disclosure, but may or may notnecessarily be combined in the same embodiments. Note also that amodule, engine, client, controller, function, logic or the like as usedherein in this Specification, can be inclusive of an executable filecomprising instructions that can be understood and processed on aserver, computer, processor, machine, compute node, combinationsthereof, or the like and may further include library modules loadedduring execution, object files, system files, hardware logic, softwarelogic, or any other executable modules.

It is also noted that the operations and steps described with referenceto the preceding figures illustrate only some of the possible scenariosthat may be executed by one or more entities discussed herein. Some ofthese operations may be deleted or removed where appropriate, or thesesteps may be modified or changed considerably without departing from thescope of the presented concepts. In addition, the timing and sequence ofthese operations may be altered considerably and still achieve theresults taught in this disclosure. The preceding operational flows havebeen offered for purposes of example and discussion. Substantialflexibility is provided by the embodiments in that any suitablearrangements, chronologies, configurations, and timing mechanisms may beprovided without departing from the teachings of the discussed concepts.

As used herein, unless expressly stated to the contrary, use of thephrase ‘at least one of’, ‘one or more of’, ‘and/or’, variationsthereof, or the like are open-ended expressions that are bothconjunctive and disjunctive in operation for any and all possiblecombination of the associated listed items. For example, each of theexpressions ‘at least one of X, Y and Z’, ‘at least one of X, Y or Z’,‘one or more of X, Y and Z’, ‘one or more of X, Y or Z’ and ‘X, Y and/orZ’ can mean any of the following: 1) X, but not Y and not Z; 2) Y, butnot X and not Z; 3) Z, but not X and not Y; 4) X and Y, but not Z; 5) Xand Z, but not Y; 6) Y and Z, but not X; or 7) X, Y, and Z.

Additionally, unless expressly stated to the contrary, the terms‘first’, ‘second’, ‘third’, etc., are intended to distinguish theparticular nouns they modify (e.g., element, condition, node, module,activity, operation, etc.). Unless expressly stated to the contrary, theuse of these terms is not intended to indicate any type of order, rank,importance, temporal sequence, or hierarchy of the modified noun. Forexample, ‘first X’ and ‘second X’ are intended to designate two ‘X’elements that are not necessarily limited by any order, rank,importance, temporal sequence, or hierarchy of the two elements. Furtheras referred to herein, ‘at least one of’ and ‘one or more of’ can berepresented using the ‘(s)’ nomenclature (e.g., one or more element(s)).

In summary, the techniques described herein provide for complementaryways to enable spontaneous social encounters, especially in a remotework environment. The meeting system enables two or more users toconnect with each other dynamically and spontaneously in a fun, light,and non-committal way when they are not explicitly in a meeting orotherwise busy. The spontaneity of the meeting system enables a remotework environment to be closer to the real world (e.g., in-office) workenvironment. The meeting system also provides a way for newly hiredemployees to be virtually introduced to coworkers and company leadershipin a light and unhindered way.

The meeting system provides the ability for users to use their presenceinformation to signal that they are “on break” and available for aspontaneous social encounter with one or more peers/friends. The meetingsystem also provides the ability to match up team members, friends, orother coworkers when both are designated as being “on break” at the sametime. Additionally, the meeting system may notify an interested partywhen their friend goes “on break” to allow the interested party todecide whether to join their friend in a social encounter.

The meeting system mimics a real world scenario of bumping into friendsand coworkers in the hallway or break room by automatically initiating ashort, dynamic meeting. New hires may be introduced to the leadershipteam or to their own team through a prioritized social encounter. Themeeting system includes logic to review historical data of socialencounters to ensure that any set of users is not matched too frequentlyor too rarely for effective social interaction. The meeting systemexamines user interests of various users, and may match users for aspontaneous social encounter based on similar user interests.

In one form, a computer-implemented method is provided for facilitatinga spontaneous social encounter. The method includes obtaining calendardata associated with each user of a plurality of users. The method alsoincludes obtaining user preferences associated with each user of theplurality of users. The method further includes prompting a first userdevice and a second user device for a social encounter based on thecalendar data and the user preferences. The first user device isassociated with the first user and the second user device is associatedwith the second user. Responsive to obtaining acceptances from the firstuser and the second user, the method includes facilitating the socialencounter between the first user and the second user.

In another form, an apparatus comprising a network interface and aprocessor is provided. The network interface is configured tocommunicate in a computer network. The processor is coupled to thenetwork interface, and configured to obtain calendar data and userpreferences associated with each user of a plurality of users. Theprocessor is also configured to prompt a first user device and a seconduser device, via the network interface, for a social encounter based onthe calendar data and the user preferences. The first user device isassociated with the first user and the second user device is associatedwith the second user. Responsive to obtaining acceptances from the firstuser and the second user, the processor is configured to facilitate thesocial encounter between the first user and the second user.

In still another form, a non-transitory computer readable storage mediais provided that is encoded with instructions that, when executed by aprocessor, cause the processor to obtain calendar data and userpreferences associated with each user of a plurality of users. Theinstructions also cause the processor to prompt a first user device anda second user device for a social encounter based on the calendar dataand the user preferences. The first user device is associated with thefirst user and the second user device is associated with the seconduser. Responsive to obtaining acceptances from the first user and thesecond user, the instructions cause the processor to facilitate thesocial encounter between the first user and the second user.

One or more advantages described herein are not meant to suggest thatany one of the embodiments described herein necessarily provides all ofthe described advantages or that all the embodiments of the presentdisclosure necessarily provide any one of the described advantages.Numerous other changes, substitutions, variations, alterations, and/ormodifications may be ascertained to one skilled in the art and it isintended that the present disclosure encompass all such changes,substitutions, variations, alterations, and/or modifications as fallingwithin the scope of the appended claims.

What is claimed is:
 1. A method comprising: obtaining calendar dataassociated with each user of a plurality of users; obtaining userpreferences associated with each user of the plurality of users;selecting a first user and a second user among the plurality of usersfor a social encounter facilitated by a meeting server, the first userand the second user selected based on the calendar data and the userpreferences; determining a planned time duration of the socialencounter; providing a first prompt from the meeting server to a firstuser device associated with the first user for the social encounter, thefirst prompt including the planned time duration of the socialencounter; providing a second prompt from the meeting server to a seconduser device associated with the second user for the social encounter,the second prompt including the planned time duration of the socialencounter; responsive to obtaining acceptances at the meeting serverfrom the first user device and the second user device, facilitating thesocial encounter between the first user and the second user with themeeting server; and ending the social encounter from the meeting serverafter the planned time duration of the social encounter.
 2. The methodof claim 1, further comprising providing a third prompt from the meetingserver to one or more third user devices associated with correspondingone or more third users, the third prompt including the planned timeduration of the social encounter.
 3. The method of claim 1, whereinfacilitating the social encounter comprises providing an online meetingfor the social encounter.
 4. The method of claim 3, further comprisingproviding an engagement activity for the first user and the second userduring the online meeting.
 5. The method of claim 1, wherein providingthe first prompt to the first user device is based on previouslyfacilitated social encounters between the first user and the seconduser.
 6. The method of claim 1, wherein the user preferences associatedwith the first user include a list of users to include in future socialencounters or a list of users to exclude in future social encounters. 7.The method of claim 1, wherein the user preferences include listings ofuser interests associated with each user of the plurality of users. 8.The method of claim 7, wherein the first prompt and the second promptinclude an indication of a common interest selected from the listing ofuser interests associated with the first user and the listing of userinterests associated with the second user.
 9. The method of claim 1,wherein the first user device and the second user device are promptedfor the social encounter based on an organization chart with a firstrole for the first user and a second role for the second user.
 10. Anapparatus comprising: a network interface configured to communicate in acomputer network; and a processor coupled to the network interface, theprocessor configured to: obtain calendar data associated with each userof a plurality of users; obtain user preferences associated with eachuser of the plurality of users; select a first user and a second useramong the plurality of users for a social encounter facilitated by theapparatus, the first user and the second user selected based on thecalendar data and the user preferences; determine a planned timeduration of the social encounter; provide a first prompt, via thenetwork interface, to a first user device associated with the first userfor the social encounter, the first prompt including the planned timeduration of the social encounter; provide a second prompt, via thenetwork interface, to a second user device associated with the seconduser for the social encounter, the second prompt including the plannedtime duration of the social encounter; responsive to obtainingacceptances from the first user device and the second user device,facilitate the social encounter between the first user and the seconduser; and end the social encounter after the planned time duration ofthe social encounter.
 11. The apparatus of claim 10, wherein theprocessor is further configured to provide a third prompt via thenetwork interface to one or more third user devices associated withcorresponding one or more third users, the third prompt including theplanned time duration of the social encounter.
 12. The apparatus ofclaim 10, wherein the processor is configured to facilitate the socialencounter by providing an engagement activity in an online meeting forthe social encounter via the network interface.
 13. The apparatus ofclaim 10, wherein the processor is further configured to provide thefirst prompt to the first user device based on previously facilitatedsocial encounters between the first user and the second user.
 14. Theapparatus of claim 10, wherein the processor is further configured toprovide the first prompt and the second prompt to include an indicationof a common interest selected from user interests associated with thefirst user and user interests associated with the second user, whereinthe user interests associated with the first user and the user interestsassociated with the second user are stored in the user preferences. 15.One or more non-transitory computer readable storage media encoded withsoftware comprising computer executable instructions and, when thesoftware is executed, it is operable to cause a processor of a meetingserver to: obtain calendar data associated with each user of a pluralityof users; obtain user preferences associated with each user of theplurality of users; select a first user and a second user among theplurality of users for a social encounter facilitated by the meetingserver, the first user and the second user selected based on thecalendar data and the user preferences; determine a planned timeduration of the social encounter; provide a first prompt from themeeting server to a first user device associated with the first user thefew social encounter, the first prompt including the planned timeduration of the social encounter; provide a second prompt from themeeting server to a second user device associated with the second userfor the social encounter, the second prompt including the planned timeduration of the social encounter; responsive to obtaining acceptances atthe meeting server from the first user device and the second userdevice, facilitate the social encounter between the first user and thesecond user; and end the social encounter after the planned timeduration of the social encounter.
 16. The one or more non-transitorycomputer readable storage media of claim 15, wherein the software isfurther operable to cause the processor to provide a third prompt to oneor more third user devices associated with corresponding one or morethird users, the third prompt including the planned time duration of thesocial encounter.
 17. The one or more non-transitory computer readablestorage media of claim 15, wherein the software is further operable tocause the processor to facilitate the social encounter by providing anonline meeting for the social encounter.
 18. The one or morenon-transitory computer readable storage media of claim 17, wherein thesoftware is further operable to cause the processor to provide anengagement activity for the first user and the second user during theonline meeting.
 19. The one or more non-transitory computer readablestorage media of claim 15, wherein the software is further operable tocause the processor to provide the first prompt to the first user devicebased on previously facilitated social encounters between the first userand the second user.
 20. The one or more non-transitory computerreadable storage media of claim 15, wherein the user preferencesassociated with the first user include a list of users to include infuture social encounters or a list of users to exclude in future socialencounters.